package 集合进阶.单列集合.List集合.泛型;

import java.util.ArrayList;

public class Generics {
    /*
    泛型不具备继承性,但是数据具备继承性
     */
    public static void main(String[] args) {
        ArrayList<Ye>list1=new ArrayList<Ye>();
        ArrayList<Fu>list2=new ArrayList<Fu>();
        ArrayList<Zi>list3=new ArrayList<Zi>();

        //调用方法
        method(list1);
        method(list2);
        method(list3);
    }


    /*
    泛型的统配符
    ?:表示不确定的类型,他可以进行类型的限定
    ? extends E:表示可以传递E或者E所有的子类的类型
    ? super E:表示可以传递E或者E的所有父类类型.
     */
    public static void method(ArrayList<? extends Ye> list){}
}
class Ye{}

class Fu extends Ye{}

class Zi extends Fu{}
